package com.kaochong.xcx.service;

import com.kaochong.xcx.entity.User;
import com.kaochong.xcx.pojo.vo.PrizeUserVO;
import com.kaochong.xcx.pojo.vo.PrizesVO;
import com.kaochong.xcx.web.aspect.CurrentUser;

import java.util.List;
import java.util.Map;
import java.util.Set;

public interface PrizesService {

    /**
     * 获取当前活动
     *
     * @return
     */
    PrizesVO getCurrentPrize(Long userId);

    /**
     * 插入完成一个stage的用户，即有资格进行抽奖的用户
     *
     * @param userId
     */
    void insertFinishStagePrizeUser(Long userId, String openId);

    /**
     * 获取我的抽奖记录
     *
     * @param userId
     * @return
     */
    List<PrizeUserVO> findPrizeUserVO(Long userId, Integer offset, Integer rows);

    /**
     * 获取中奖幸运儿
     *
     * @param PrizeDate
     * @return
     */
    Map<String,Object> getLuckyUser(String PrizeDate);

    /**
     * 存储获奖用户手机号
     *
     * @param userId
     * @param phone
     */
    void savePhone(Long userId, String phone);

    /**
     * 好友助力
     * @param currentUser
     * @param openId
     * @param prizeid
     * @param helpDate
     */
    void friendHelp(CurrentUser currentUser, String openId, Integer prizeid, String helpDate);

    /**
     * 抽取获奖人员
     * @param prizeDate
     * @return
     */
    Set<User> getAllLuckyUser(String prizeDate);

    /**
     * 获取首页状态
     * @return
     */
     Integer getPrizeState();
}
